/*
 * Copyright (c) 2009, Jan Pastor. All Rights Reserved.
 */

/**
 * Components for support {@link sk.jp.commons.utils.BackgroundProcess} for present on UI.
 * 
 * <p>Example of advanced use - background process with indicator/control component and
 * state presentation on status bar, and failure handler:<br/>
 * 
 * <pre>
 ...
 //State handler for present process state as text message on status bar.
 BackgroundProcess.StateHandler stateHandler
     = new ProcessStateHandlerForStatusbar(statusBar);

 //Create instance of process with state handlers
 //  - stateHandler is handler for present process
 //        state as message on status bar,
 //    backgroundProcessIndicator is component for present
 //        running process. It support mouse click to control.
 //    new ProcessFailureHandler() instantiate handler for
 //        failures (shows exception message dialog).
 BackgroundProcess backgroundProcess
     = new RenderThumbnailsProcess(backgroundProcessIndicator, stateHandler,
                                   new ProcessFailureHandler());

 //Create mouse click handler for process indicator/control. Use dafault implementation.
 MouseListener bpiClickHandler
     = new BackgroundProcessIndicator.DefaultClickHandler(
             backgroundProcess, backgroundProcessIndicator);

 //Start background process execution from indicator
 backgroundProcessIndicator.start(backgroundProcess, bpiClickHandler);
 ...
 * </pre>
 */
package sk.jp.commons.ui.bgproc;


